A language is regular if it is accepted by some FA(Finite Automata)
Regular Operations
The class of languages accepted by finite automata is closed under:
∃M1=(K1,Σ,δ1,S1,F1)∃M2=(K2,Σ,δ2,S2,F2)construct ∃M3=(K3,Σ,δ3,S3,F3)K3=K1×K2S3=(S1,S2)F3={(q1,q2)∈K1×K2:q1∈F1∨q2∈F2}
M1=(K1,Σ,Δ1,S1,F1)M2=(K2,Σ,Δ2,S2,F2)M=(K,Σ,Δ,S,F)let K=K1∪K2S=S1F=F2Δ=Δ1∪Δ2∪{q,e,s2:q∈F1}
额外构造一个初始态,表示接受空串
Let L be a regular language. There exists an integer p≥1, such that w∈L with |w|≥p can be divided into 3 pieces w=xyz, satisfying the followings:
e.g. for L=ab∗a, p=3.
Assume that 0n1n is regular, let p be the pumping length. Let w=0p1p∈L, w can be written as w=xyz. (1) xyiz∈L for any i≥0 (2) |y|>0 (3) |xy|≤p (2)(3) -> y=0k(k>0) -> xy0z=0p−k1p∉L